package com.open.capacity.form.service;



import com.open.capacity.commons.PageResult;

import java.util.List;
import java.util.Map;

/**
 * @author 作者 ftquan 464725602@qq.com
 * @version 创建时间：2017年11月12日 上午22:57:51
 */
public interface CustomerFormExtService {


    /**
     * 获取分页数据
     *
     * @param schemeInfoId 模板信息主键
     * @param params       参数
     * @return
     */
    PageResult<Map<String, Object>> getFormPageList(String schemeInfoId, Integer page, Integer limit, Map<String, Object> params);


    /**
     * 获取数据
     *
     * @param schemeInfoId 模板信息主键
     * @param params       参数
     * @return
     */
    List<Map<String, Object>> getFormList(String schemeInfoId, Map<String, Object> params);

    /**
     * 获取自定义表单数据
     *
     * @param schemeInfoId 模板信息主键
     * @param keyValue     主键
     * @return
     */
    Map<String, List<Map<String, Object>>> getInstanceForm(String schemeInfoId, String keyValue);


    /**
     * 保存自定义表单数据
     *
     * @param id        schemeinfoId
     * @param processId 流程实例id
     * @param keyValue  key值
     * @param formDataMap  表单数据
     * @return
     */
    void saveInstanceForm(String id, String processId, String keyValue,  Map<String, Object> formDataMap);


    /**
     * 删除自定义表单数据
     *
     * @param schemeInfoId 表单模板主键
     * @param keyValue     数据主键值
     */
    void deleteInstanceForm(String schemeInfoId, String keyValue);

}
